package com.ex.model;
// Generated 2018-7-14 23:34:36 by Hibernate Tools 4.3.5.Final

import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * TOutRequest generated by hbm2java
 */
@Entity
@Table(name = "t_out_request", catalog = "huaqiao")
public class TOutRequest implements java.io.Serializable {

	private Integer id;
	private TStudent TStudent;
	private TTeacher TTeacher;
	private Date startTime;
	private Date endTime;
	private String requestReason;
	private String rejectReason;
	private Integer steacherId;
	private Integer authStatus;
	private Date requestTime;
	private Date authTime;
	private Integer isAgent;
	private Date modifiedTime;
	private Integer modifiedBy;

	public TOutRequest() {
	}

	public TOutRequest(TStudent TStudent, TTeacher TTeacher, Date startTime, Date endTime, String requestReason,
			String rejectReason, Integer steacherId, Integer authStatus, Date requestTime, Date authTime,
			Integer isAgent, Date modifiedTime, Integer modifiedBy) {
		this.TStudent = TStudent;
		this.TTeacher = TTeacher;
		this.startTime = startTime;
		this.endTime = endTime;
		this.requestReason = requestReason;
		this.rejectReason = rejectReason;
		this.steacherId = steacherId;
		this.authStatus = authStatus;
		this.requestTime = requestTime;
		this.authTime = authTime;
		this.isAgent = isAgent;
		this.modifiedTime = modifiedTime;
		this.modifiedBy = modifiedBy;
	}

	@Id
	@GeneratedValue(strategy = IDENTITY)

	@Column(name = "id", unique = true, nullable = false)
	public Integer getId() {
		return this.id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "student_id")
	public TStudent getTStudent() {
		return this.TStudent;
	}

	public void setTStudent(TStudent TStudent) {
		this.TStudent = TStudent;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "t_t_id")
	public TTeacher getTTeacher() {
		return this.TTeacher;
	}

	public void setTTeacher(TTeacher TTeacher) {
		this.TTeacher = TTeacher;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "start_time", length = 19)
	public Date getStartTime() {
		return this.startTime;
	}

	public void setStartTime(Date startTime) {
		this.startTime = startTime;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "end_time", length = 19)
	public Date getEndTime() {
		return this.endTime;
	}

	public void setEndTime(Date endTime) {
		this.endTime = endTime;
	}

	@Column(name = "request_reason", length = 200)
	public String getRequestReason() {
		return this.requestReason;
	}

	public void setRequestReason(String requestReason) {
		this.requestReason = requestReason;
	}

	@Column(name = "reject_reason", length = 200)
	public String getRejectReason() {
		return this.rejectReason;
	}

	public void setRejectReason(String rejectReason) {
		this.rejectReason = rejectReason;
	}

	@Column(name = "steacher_id")
	public Integer getSteacherId() {
		return this.steacherId;
	}

	public void setSteacherId(Integer steacherId) {
		this.steacherId = steacherId;
	}

	@Column(name = "auth_status")
	public Integer getAuthStatus() {
		return this.authStatus;
	}

	public void setAuthStatus(Integer authStatus) {
		this.authStatus = authStatus;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "request_time", length = 19)
	public Date getRequestTime() {
		return this.requestTime;
	}

	public void setRequestTime(Date requestTime) {
		this.requestTime = requestTime;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "auth_time", length = 19)
	public Date getAuthTime() {
		return this.authTime;
	}

	public void setAuthTime(Date authTime) {
		this.authTime = authTime;
	}

	@Column(name = "is_agent")
	public Integer getIsAgent() {
		return this.isAgent;
	}

	public void setIsAgent(Integer isAgent) {
		this.isAgent = isAgent;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "modified_time", length = 19)
	public Date getModifiedTime() {
		return this.modifiedTime;
	}

	public void setModifiedTime(Date modifiedTime) {
		this.modifiedTime = modifiedTime;
	}

	@Column(name = "modified_by")
	public Integer getModifiedBy() {
		return this.modifiedBy;
	}

	public void setModifiedBy(Integer modifiedBy) {
		this.modifiedBy = modifiedBy;
	}

}
